﻿<Serializable()> _
Public Class Task
    Inherits BaseDominio

    Private _autor As String
    Public Overridable Property Autor() As String
        Get
            Return _autor
        End Get
        Set(ByVal value As String)
            _autor = value
        End Set
    End Property

    Private _responsavel As String
    Public Overridable Property Responsavel() As String
        Get
            Return _responsavel
        End Get
        Set(ByVal value As String)
            _responsavel = value
        End Set
    End Property

    Private _descricao As String
    Public Overridable Property Descricao() As String
        Get
            Return _descricao
        End Get
        Set(ByVal value As String)
            _descricao = value
        End Set
    End Property

    Private _status As StatusTarefa
    Public Overridable Property Status() As StatusTarefa
        Get
            Return _status
        End Get
        Set(ByVal value As StatusTarefa)
            _status = value
        End Set
    End Property

    Private _dataCriacao As DateTime
    Public Overridable Property DataCriacao() As DateTime
        Get
            Return _dataCriacao
        End Get
        Set(ByVal value As DateTime)
            _dataCriacao = value
        End Set
    End Property

    Private _dataFechamento As Nullable(Of DateTime)
    Public Overridable Property DataFechamento() As Nullable(Of DateTime)
        Get
            Return _dataFechamento
        End Get
        Set(ByVal value As Nullable(Of DateTime))
            _dataFechamento = value
        End Set
    End Property

    Private _itemBackLog As ItemBackLog
    Public Overridable Property ItemBackLog() As ItemBackLog
        Get
            Return _itemBackLog
        End Get
        Set(ByVal value As ItemBackLog)
            _itemBackLog = value
        End Set
    End Property

    Private _duvidas As IList(Of Duvida)
    Public Overridable Property Duvidas() As IList(Of Duvida)
        Get
            Return _duvidas
        End Get
        Set(ByVal value As IList(Of Duvida))
            _duvidas = value
        End Set
    End Property



#Region "Negocio"

    Public Sub New()
        MyBase.New()
    End Sub

    Public Overridable Function Buscar(ByVal _id As Long) As Task
        Return MyBase.TaskDao.Buscar(_id)
    End Function

    Public Overridable Sub Salvar()
        MyBase.TaskDao.Salvar(Me)
    End Sub

#End Region

End Class
